Automatically assigning natural language labels to non-conforming behavior of processes

ABSTRACT

Systems and methods for automatically assigning labels to one or more types of non-conforming behavior of execution of a process are provided. An aligned process defining non-conforming behavior of execution of a process is received. One or more types of the non-conforming behavior of the execution of the process is identified from the aligned process. Labels identifying the one or more types are assigned to the non-conforming behavior. The labels assigned to the non-conforming behavior are output.

TECHNICAL FIELD

The present invention relates generally to process mining, and moreparticularly to automatically assigning natural language labels tonon-conforming behavior in processes.

BACKGROUND

Processes are sequences of activities executed by one or more computersto perform various tasks. In process mining, conformance checking isperformed to evaluate whether the actual execution of the processconforms to the expected execution of the process. Conventionally,conformance checking is performed by manually comparing an event logrepresenting the actual execution of the process with a process modelrepresenting the expected execution of the process. However, suchconventional conformance checking is a time-consuming andlabor-intensive process.

BRIEF SUMMARY OF THE INVENTION

In accordance with one or more embodiments, systems and methods forautomatically assigning labels to one or more types of non-conformingbehavior of execution of a process are provided. An aligned processdefining non-conforming behavior of execution of a process is received.One or more types of the non-conforming behavior of the execution of theprocess is identified from the aligned process. Labels identifying theone or more types are assigned to the non-conforming behavior. Thelabels assigned to the non-conforming behavior are output. In oneembodiment, the process is an RPA (robotic process automation) process.

In one embodiment, the labels are generated according to a standardizedformat to identify the one or more types of non-conforming behavior. Thelabels assigned to the one or more types of the non-conforming behaviormay be displayed with the aligned process.

In one embodiment, a non-conforming skipped activity is identified inthe aligned process where the activity has an outgoing log-only path andan outgoing model-only path. The outgoing log-only path occurs in anevent log of the process as outgoing from the activity but does notoccur in a process model of the process and the outgoing model-only pathoccurs in a process model of the process as outgoing from the activitybut does not occur in the event log. In another embodiment, anon-conforming repeated activity in the aligned process is identifiedwhere the activity has a model-only edge that is both outgoing andincoming. The model-only edge occurs in a process model of the processbut does not occur in an event log of the process. In anotherembodiment, a non-conforming loop back to an earlier point in thealigned process is identified where a node of the aligned process has anoutgoing log-only edge to a previously traversed node. The outgoinglog-only edge occurs in an event log of the process but does not occurin a process model of the process.

In one embodiment, the non-conforming behavior is identified as being ablock comprising a sub-process of the aligned process. The labels forthe block may be generated according to a standardized format toidentify the one or more types of the non-conforming behavior based on aname of an activity in the block.

These and other advantages of the invention will be apparent to those ofordinary skill in the art by reference to the following detaileddescription and the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an illustrative process on which conformance checking maybe performed in accordance with one or more embodiments;

FIG. 2 shows a method for automatically assigning natural languagelabels to one or more types of non-conforming behavior of a process, inaccordance with one or more embodiments;

FIG. 3 shows an exemplary process model, in accordance with one or moreembodiments;

FIG. 4 shows an exemplary event log of a process, in accordance with oneor more embodiments;

FIG. 5 shows an exemplary aligned process, in accordance with one ormore embodiments;

FIG. 6 shows a portion of an aligned process showing non-conformingskipped activity behavior, in accordance with one or more embodiments;

FIG. 7 shows a portion of an aligned process showing non-conformingrepeated activities behavior, in accordance with one or moreembodiments;

FIG. 8 shows a portion of an aligned process showing non-conforming loopback behavior, in accordance with one or more embodiments;

FIG. 9 shows an exemplary user interface presenting labels assigned totypes of non-conforming behavior, in accordance with one or moreembodiments; and

FIG. 10 is a block diagram of a computing system according to anembodiment of the invention.

DETAILED DESCRIPTION

FIG. 1 shows an illustrative process 100 on which conformance checkingmay be performed, in accordance with one or more embodiments. Process100 may be applied to perform any suitable task, such as, e.g., documentprocessing. In one embodiment, process 100 may be implemented as an RPA(robotic process automation) process for automatically performing a taskusing one or more RPA robots. However, it should be understood thatprocess 100 may be any suitable process that can be modelled as aworkflow, such as, e.g., a business workflow.

Process 100 comprises activities 102-116, which represent predefinedsteps in process 100. As shown in FIG. 1 , process 100 is modeled as adirected graph where each activity 102-116 is represented as a node andeach transition between activities 102-116 is represented as edgeslinking the nodes. The transition between activities represents theexecution of process 100 from a source activity to a destinationactivity. Process 100 starts at start activity 102 and proceeds toactivity A 104. Process 100 then proceeds, in parallel, to a firstbranch comprising activity B 106 and activity C 108 and a second branchcomprising activity D 110 and activity E 112. Process 100 then proceedsto activity F 114 and ends at end activity 116. Execution of process 100is recorded as an event log. Each event of the event log refers to theexecution of an activity for a certain case at a certain point in time.The event may be represented as a tuple comprising an activity, a caseidentifier, and a time stamp. Expected execution of process 100 ismodelled as a process model.

In process mining, conformance checking is performed on, e.g., process100 to evaluate whether actual execution of process 100 (as identifiedin the event log) conforms to the expected execution of process 100 (asidentified in the process model). In accordance with embodiments of thepresent invention, types of non-conforming behavior of the execution ofprocess 100 are automatically assigned natural language labels.Advantageously, such automatic assignment of natural language labels tothe types of non-conforming behavior facilitates user understanding andanalysis of the non-conforming behavior.

FIG. 2 shows a method 200 for automatically assigning natural languagelabels to one or more types of non-conforming behavior of a process, inaccordance with one or more embodiments. Method 200 may be performed byone or more suitable computing devices, such as computer 900 of FIG. 9 .

At step 202 of FIG. 2 , an aligned process defining non-conformingbehavior of execution of a process is received. As used herein,non-conforming behavior refers to actual behavior of a process that doesnot conform to the expected behavior of the process. The aligned processmay have been generated based on an event log representing actualexecution of the process and a process model representing expectedexecution of the process by aligning the event log to the process model.Generation of an aligned process is further described in U.S. Pat.Application Publication No. 2021/0200574, entitled “Visual ConformanceChecking of Processes,” filed Dec. 30, 2019, the disclosure of which isincorporated herein by reference in its entirety. An exemplary processmodel is shown in FIG. 3 , an exemplary event log is shown in FIG. 4 ,and exemplary aligned process is shown in FIG. 5 , which are describedin detail below.

The aligned process may be received by loading the aligned process froma storage or memory of a computer system or by receiving the alignedprocess from a remote computer system. In one example, the process isprocess 100 of FIG. 1 . In one embodiment, the process is an RPA processautomatically executed by one or more RPA robots.

FIG. 3 shows an exemplary process model 300, in accordance with one ormore embodiments. Process model 300 represents expected execution ofprocess 100 of FIG. 1 . Process model 300 is modelled as directed graphwhere each activity of the process is represented as a node and theexecution of the process from a source activity to a destinationactivity is represented as an edge connecting the nodes representing thesource activity and the destination activity. Each edge in process model300 is associated with a number representing a frequency of execution ofthat edge.

Process model 300 models expected execution of process 100 usinggateways to represent diversions in process 100. The gateways controlhow the process flows during execution. Gateways are represented inprocess model 300 as gateway nodes. For example, gateway nodes, shown inFIG. 3 as diamond-shaped nodes identified with a “+”, may representparallel relationships. Process model 300 may also comprise gatewaynodes representing other types of relationships, such as, e.g.,exclusive choice relationships, looping relationships, sequentialrelationships, etc. As shown in FIG. 3 , parallel split gateway 302represents splitting of the path from activity A 104 into a first pathto activity B 106 and a second path to activity D 110 to concurrentlyexecute activity B 106 and activity D 110, and parallel join gateway 304represents the joining of a first path from activity C 108 and aconcurrent second path from activity E 112 into a single path toactivity F 114.

FIG. 4 shows an exemplary event log 400 of a process, in accordance withone or more embodiments. Event log 400 records execution of process 100of FIG. 1 and will be described with reference to FIG. 1 . Event log 400is formatted as a table having rows 402 and columns 404. As shown inFIG. 4 , rows 402 of event log 400 comprises rows 402-A through 402-F,each corresponding to an event defining execution of a respectiveactivity 104-114, with a particular time stamp and with a particularcase identifier. Event log 400 may also include rows 402 for startactivity 102 and end activity 116 in some embodiments. Columns 404 ofevent log 400 comprises column 404-A identifying the activity, column404-B identifying the time stamp, and column 404-C identifying the caseidentifier. Columns 404 may include additional columns identifyingadditional attributes of activities.

FIG. 5 shows an exemplary aligned process 500 of a process, inaccordance with one or more embodiments. Aligned process 500 comprisesaligned events and transitions that represent the actual execution ofthe process aligned over the process model of the process. Alignedprocess 500 is modelled as directed graph where each activity of theprocess is represented as a node and the execution of the process from asource activity to a destination activity is represented as an edgeconnecting the nodes representing the source activity and thedestination activity. Each edge in aligned process 500 is associatedwith a number representing a frequency of execution of that edge.

When the actual execution of certain paths of the process matches theexpected execution of the certain paths of the process, execution of thecertain paths of the process is identified in aligned process 500 asbeing conforming behavior. When the actual execution of certain paths ofthe process deviates from the expected execution of the certain paths ofthe process, execution of the certain paths of the process is identifiedin aligned process 500 as being non-conforming behavior. Thenon-conforming behavior may be non-conforming log only behavior wherepaths occur in the event log but not in the process model or thenon-conforming behavior may be non-conforming model-only behavior wherepaths occur in the process model but not in the event log. In oneembodiment, aligned process 500 identifies the behavior by color codingthe nodes and/or edges of aligned process 500 to identify conformingbehavior (e.g., as blue), the non-conforming log-only behavior (e.g., asorange), and the non-conforming model-only behavior (e.g., as green).

At step 204 of FIG. 2 , one or more types of the non-conforming behaviorof the execution of the process are identified from the aligned process.The non-conforming behavior may comprise, for example, non-conformingpaths comprising activities, edges, or a sub-process of the process. Inone embodiment, the non-conforming behavior may comprise one or more ofskipped activities, repeated activities, and loop backs. Other types ofnon-conforming behavior are also contemplated, such as, e.g., out oforder performance of activities, violation of exclusive relationships,performing (at least parts of) multiple branches in an exclusive block,etc.

In one embodiment, the non-conforming behavior is identified in thealigned process based on rule-based pattern matching. The rule-basedpattern matching identifies patterns of log-only and model-only edges.

In one embodiment, a non-conforming skipped activity is identified wherea particular activity has an outgoing log-only path and an outgoingmodel-only path The outgoing log-only path is a path (comprising, e.g.,one or more edges and/or nodes) that occurs in the event log as outgoingfrom the particular activity but does not occur in the process model.The outgoing model-only path is a path that occurs in the process modelas outgoing from the particular activity but does not occur in the eventlog. When the particular activity has an outgoing log-only path and anoutgoing model-only path, it is assumed that the particular activity isskipped. FIG. 6 shows a portion of an aligned process 600 showing anon-conforming skipped activity, in accordance with one or moreembodiments. In aligned process 600, the “approve invoice” activity 604is skipped during the instances of execution of edges 602.

In one embodiment, non-conforming repeated activity behavior isidentified where a particular activity has a log-only edge that is bothoutgoing and incoming, thereby forming a self-loop. The log-only edge isan edge that occurs in the event log but does not occur in the processmodel. FIG. 7 shows a portion of an aligned process 700 showingnon-conforming repeated activities behavior, in accordance with one ormore embodiments. In aligned process 700, the “approve invoice” activity704 is repeated during instances of execution of edges 702.

In one embodiment, non-conforming loop back behavior is identified wherea particular node (e.g., a gateway node or an activity node) has anoutgoing log-only edge to a node previously traversed during thatinstance of execution. The outgoing log-only edge is an outgoing edgethat occurs in the event log but does not occur in the process model.FIG. 8 shows a portion of an aligned process 800showing non-conformingloop back behavior, in accordance with one or more embodiments. Inaligned process 800, execution of the process loops back to an earlierpoint in the aligned process 800 and activities are repeated duringinstances of execution of edges 802.

It should be understood that the identification of non-conformingbehavior is not limited to the rule-based pattern matching discussedabove. For example, in one embodiment, non-conforming behavior can beidentified using pattern recognition techniques for graphs to identify aset of predefined patterns associated with a specific type ofnon-conforming behavior. In another embodiment, a machine learning basedmodel may be trained to identify non-conforming behavior usingnon-conformance behavior that has been previously identified. In afurther embodiment, the non-conforming behavior can be identified whileperforming the process alignment to generate the aligned process. Theparticular approach for identifying non-conforming behavior may bedetermined based on the type of non-conforming behavior being detected.

At step 206 of FIG. 2 , labels identifying the one or more types areassigned to the non-conforming behavior. The labels are natural languagelabels that allow users to easily identify and explore non-conformingbehavior of interest. The labels may be generated using any suitableapproach.

In one embodiment, the labels are generated using a standardized formatbased on the type of the non-conforming behavior to provide naturallanguage labels. For example, where the type of the non-conformingbehavior is identified as being a non-conforming skipped activity, thelabel is generated as: “skipped <name>”, where <name> refers to the nameof the activity that is skipped. Where the type of the non-conformingbehavior is identified as being a non-conforming repeated activity, thelabel is generated as: “repeating <name>”, where <name> refers to thename of the activity that is repeated. Where the type of thenon-conforming behavior is identified as being a non-conforming loopback, the label is generated as: “loop back from <name1> to <name2>”,where <name1> refers to the name of the from-activity and <name2> refersto the name of the to-activity. If the type of the non-conformingbehavior cannot be determined (e.g., where the rules for identifying thetypes of the non-conforming behavior do not cover all possiblenon-conforming behavior or where the machine learning model cannotrecognize all non-conforming behavior), a label of “unknownnon-conforming behavior” label is assigned to the non-conformingbehavior. As such, labels are assigned to all non-conforming behavior.Only fully conforming behavior have no labels.

In many cases, the non-conforming behavior is not limited to a singleactivity or node but may comprise a block comprising a sub-process ofthe process. To assign labels to such blocks, the block hierarchy of theprocess tree of the process is utilized, which may be derived from theprocess model during process alignment. A standardized format based on atype of behavior in the block is provided to generate a label of theblock as follows: “<type> block containing <name>”, where <type> is atype of behavior in the block (e.g., parallel) and <name> is a name ofany activity in the block. For some processes (or process apps), it isdesirable to assign process-specific names to the blocks, which can bedone at the app-level. In some embodiments, blocks may be manuallylabeled by a user.

At step 208 of FIG. 2 , the labels assigned to the non-conformingbehavior are output. In one embodiment, the labels are output bydisplaying the labels to a user on a display device, therebyfacilitating selection and exploration of non-conforming behavior ofinterest by a user. In other embodiments, the labels may be output by,for example, storing the labels on a memory or storage of a computersystem or by transmitting the labels to a remote computer system.

FIG. 9 shows an exemplary user interface 900 presenting labels assignedto non-conforming behavior, in accordance with one or more embodiments.The assigned labels may have been assigned according to method 200 ofFIG. 2 . As shown in FIG. 9 , an aligned process 904 is shown with atable 902 listing labels identifying types of non-conforming behavior ofaligned process 904 in a first row and a corresponding number of casesin a second row. In user interface 900, a user can select (e.g., byclicking) on the labels, which will select all cases that are assignedto the selected label. The user can then further explore this selectionand perform root-cause analysis to find out what may cause thesedeviations to occur. Advantageously, the labels identifying a type ofnon-conforming behavior enable the user to select and explorenon-conforming behavior of interest of process 902.

FIG. 10 is a block diagram illustrating a computing system 1000configured to execute the methods, workflows, and processes describedherein, including FIG. 2 , according to an embodiment of the presentinvention. In some embodiments, computing system 1000 may be one or moreof the computing systems depicted and/or described herein. Computingsystem 1000 includes a bus 1002 or other communication mechanism forcommunicating information, and processor(s) 1004 coupled to bus 1002 forprocessing information. Processor(s) 1004 may be any type of general orspecific purpose processor, including a Central Processing Unit (CPU),an Application Specific Integrated Circuit (ASIC), a Field ProgrammableGate Array (FPGA), a Graphics Processing Unit (GPU), multiple instancesthereof, and/or any combination thereof. Processor(s) 1004 may also havemultiple processing cores, and at least some of the cores may beconfigured to perform specific functions. Multi-parallel processing maybe used in some embodiments.

Computing system 1000 further includes a memory 1006 for storinginformation and instructions to be executed by processor(s) 1004. Memory1006 can be comprised of any combination of Random Access Memory (RAM),Read Only Memory (ROM), flash memory, cache, static storage such as amagnetic or optical disk, or any other types of non-transitorycomputer-readable media or combinations thereof. Non-transitorycomputer-readable media may be any available media that can be accessedby processor(s) 1004 and may include volatile media, non-volatile media,or both. The media may also be removable, non-removable, or both.

Additionally, computing system 1000 includes a communication device1008, such as a transceiver, to provide access to a communicationsnetwork via a wireless and/or wired connection according to anycurrently existing or future-implemented communications standard and/orprotocol.

Processor(s) 1004 are further coupled via bus 1002 to a display 1010that is suitable for displaying information to a user. Display 1010 mayalso be configured as a touch display and/or any suitable haptic I/O(input/output) device.

A keyboard 1012 and a cursor control device 1014, such as a computermouse, a touchpad, etc., are further coupled to bus 1002 to enable auser to interface with computing system. However, in certainembodiments, a physical keyboard and mouse may not be present, and theuser may interact with the device solely through display 1010 and/or atouchpad (not shown). Any type and combination of input devices may beused as a matter of design choice. In certain embodiments, no physicalinput device and/or display is present. For instance, the user mayinteract with computing system 1000 remotely via another computingsystem in communication therewith, or computing system 1000 may operateautonomously.

Memory 1006 stores software modules that provide functionality whenexecuted by processor(s) 1004. The modules include an operating system1016 for computing system 1000 and one or more additional functionalmodules 1018 configured to perform all or part of the processesdescribed herein or derivatives thereof.

One skilled in the art will appreciate that a “system” could be embodiedas a server, an embedded computing system, a personal computer, aconsole, a personal digital assistant (PDA), a cell phone, a tabletcomputing device, a quantum computing system, or any other suitablecomputing device, or combination of devices without deviating from thescope of the invention. Presenting the above-described functions asbeing performed by a “system” is not intended to limit the scope of thepresent invention in any way, but is intended to provide one example ofthe many embodiments of the present invention. Indeed, methods, systems,and apparatuses disclosed herein may be implemented in localized anddistributed forms consistent with computing technology, including cloudcomputing systems.

It should be noted that some of the system features described in thisspecification have been presented as modules, in order to moreparticularly emphasize their implementation independence. For example, amodule may be implemented as a hardware circuit comprising custom verylarge scale integration (VLSI) circuits or gate arrays, off-the-shelfsemiconductors such as logic chips, transistors, or other discretecomponents. A module may also be implemented in programmable hardwaredevices such as field programmable gate arrays, programmable arraylogic, programmable logic devices, graphics processing units, or thelike. A module may also be at least partially implemented in softwarefor execution by various types of processors. An identified unit ofexecutable code may, for instance, include one or more physical orlogical blocks of computer instructions that may, for instance, beorganized as an object, procedure, or function. Nevertheless, theexecutables of an identified module need not be physically locatedtogether, but may include disparate instructions stored in differentlocations that, when joined logically together, comprise the module andachieve the stated purpose for the module. Further, modules may bestored on a computer-readable medium, which may be, for instance, a harddisk drive, flash device, RAM, tape, and/or any other suchnon-transitory computer-readable medium used to store data withoutdeviating from the scope of the invention. Indeed, a module ofexecutable code could be a single instruction, or many instructions, andmay even be distributed over several different code segments, amongdifferent programs, and across several memory devices. Similarly,operational data may be identified and illustrated herein withinmodules, and may be embodied in any suitable form and organized withinany suitable type of data structure. The operational data may becollected as a single data set, or may be distributed over differentlocations including over different storage devices, and may exist, atleast partially, merely as electronic signals on a system or network.

The foregoing merely illustrates the principles of the disclosure. Itwill thus be appreciated that those skilled in the art will be able todevise various arrangements that, although not explicitly described orshown herein, embody the principles of the disclosure and are includedwithin its spirit and scope. Furthermore, all examples and conditionallanguage recited herein are principally intended to be only forpedagogical purposes to aid the reader in understanding the principlesof the disclosure and the concepts contributed by the inventor tofurthering the art, and are to be construed as being without limitationto such specifically recited examples and conditions. Moreover, allstatements herein reciting principles, aspects, and embodiments of thedisclosure, as well as specific examples thereof, are intended toencompass both structural and functional equivalents thereof.Additionally, it is intended that such equivalents include bothcurrently known equivalents as well as equivalents developed in thefuture.

What is claimed is:
 1. A computer-implemented method comprising:receiving an aligned process defining non-conforming behavior ofexecution of a process; identifying one or more types of thenon-conforming behavior of the execution of the process from the alignedprocess; assigning labels identifying the one or more types to thenon-conforming behavior; and outputting the labels assigned to thenon-conforming behavior.
 2. The computer-implemented method of claim 1,wherein assigning labels identifying the one or more types to thenon-conforming behavior comprises: generating the labels according to astandardized format to identify the one or more types of thenon-conforming behavior.
 3. The computer-implemented method of claim 1,wherein identifying one or more types of the non-conforming behavior ofthe execution of the process from the aligned process comprises:identifying a non-conforming skipped activity in the aligned processwhere the activity has an outgoing log-only path and an outgoingmodel-only path, wherein the outgoing log-only path occurs in an eventlog of the process as outgoing from the activity but does not occur in aprocess model of the process, and wherein the outgoing model-only pathoccurs in the process model as outgoing from the activity but does notoccur in the event log.
 4. The computer-implemented method of claim 1,wherein identifying one or more types of the non-conforming behavior ofthe execution of the process from the aligned process comprises:identifying a non-conforming repeated activity in the aligned processwhere the activity has a model-only edge that is both outgoing andincoming, wherein the model-only edge occurs in a process model of theprocess but does not occur in an event log of the process.
 5. Thecomputer-implemented method of claim 1, wherein identifying one or moretypes of the non-conforming behavior of the execution of the processfrom the aligned process comprises: identifying a non-conforming loopback to an earlier point in the aligned process where a node of thealigned process has an outgoing log-only edge to a previously traversednode, wherein the outgoing log-only edge occurs in an event log of theprocess but does not occur in a process model of the process.
 6. Thecomputer-implemented method of claim 1, wherein identifying one or moretypes of the non-conforming behavior of the execution of the processfrom the aligned process comprises: identifying the non-conformingbehavior as being a block comprising a sub-process of the alignedprocess.
 7. The computer-implemented method of claim 6, whereinassigning labels identifying the one or more types to the non-conformingbehavior comprises: generating the labels for the block according to astandardized format to identify the one or more types of thenon-conforming behavior based on a name of an activity in the block. 8.The computer-implemented method of claim 1, wherein outputting thelabels assigned to the non-conforming behavior comprises: displaying thelabels assigned to the one or more types of the non-conforming behaviorwith the aligned process.
 9. The computer-implemented method of claim 1,wherein the process is an RPA (robotic process automation) process. 10.An apparatus comprising: a memory storing computer instructions; and atleast one processor configured to execute the computer instructions, thecomputer instructions configured to cause the at least one processor toperform operations of: receiving an aligned process definingnon-conforming behavior of execution of a process; identifying one ormore types of the non-conforming behavior of the execution of theprocess from the aligned process; assigning labels identifying the oneor more types to the non-conforming behavior; and outputting the labelsassigned to the non-conforming behavior.
 11. The apparatus of claim 10,wherein assigning labels identifying the one or more types to thenon-conforming behavior comprises: generating the labels according to astandardized format to identify the one or more types of thenon-conforming behavior.
 12. The apparatus of claim 10, whereinidentifying one or more types of the non-conforming behavior of theexecution of the process from the aligned process comprises: identifyinga non-conforming skipped activity in the aligned process where theactivity has an outgoing log-only path and an outgoing model-only path,wherein the outgoing log-only path occurs in an event log of the processas outgoing from the activity but does not occur in a process model ofthe process, and wherein the outgoing model-only path occurs in theprocess model as outgoing from the activity but does not occur in theevent log.
 13. The apparatus of claim 10, wherein identifying one ormore types of the non-conforming behavior of the execution of theprocess from the aligned process comprises: identifying a non-conformingrepeated activity in the aligned process where the activity has amodel-only edge that is both outgoing and incoming, wherein themodel-only edge occurs in a process model of the process but does notoccur in an event log of the process.
 14. The apparatus of claim 10,wherein identifying one or more types of the non-conforming behavior ofthe execution of the process from the aligned process comprises:identifying a non-conforming loop back to an earlier point in thealigned process where a node of the aligned process has an outgoinglog-only edge to a previously traversed node, wherein the outgoinglog-only edge occurs in an event log of the process but does not occurin a process model of the process.
 15. A non-transitorycomputer-readable medium storing computer program instructions, thecomputer program instructions, when executed on at least one processor,cause the at least one processor to perform operations comprising:receiving an aligned process defining non-conforming behavior ofexecution of a process; identifying one or more types of thenon-conforming behavior of the execution of the process from the alignedprocess; assigning labels identifying the one or more types to thenon-conforming behavior; and outputting the labels assigned to thenon-conforming behavior.
 16. The non-transitory computer-readable mediumof claim 15, wherein assigning labels identifying the one or more typesto the non-conforming behavior comprises: generating the labelsaccording to a standardized format to identify the one or more types ofnon-conforming behavior.
 17. The non-transitory computer-readable mediumof claim 15, wherein identifying one or more types of the non-conformingbehavior of the execution of the process from the aligned processcomprises: identifying the non-conforming behavior as being a blockcomprising a sub-process of the aligned process.
 18. The non-transitorycomputer-readable medium of claim 17, wherein assigning labelsidentifying the one or more types to the non-conforming behaviorcomprises: generating the labels for the block according to astandardized format to identify the one or more types of thenon-conforming behavior based on a name of an activity in the block. 19.The non-transitory computer-readable medium of claim 15, whereinoutputting the labels assigned to the non-conforming behavior comprises:displaying the labels assigned to the one or more types of thenon-conforming behavior with the aligned process.
 20. The non-transitorycomputer-readable medium of claim 15, wherein the process is an RPA(robotic process automation) process.